home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Users Group Library 1996 July / C-C++ Users Group Library July 1996.iso / vol_300 / 333_02 / p092.awk < prev    next >
Text File  |  1989-04-21  |  1KB  |  52 lines

  1.  
  2.  
  3. #   form2 - format countries by continent, pop. den.
  4.  
  5. BEGIN        {
  6.         FS = ":"
  7.         printf("%-15s %-10s %10s %7s %12s\n",
  8.                "CONTINENT", "COUNTRY", "POPULATION",
  9.                "AREA", "POP. DEN.")
  10.         }
  11.  
  12.         {
  13.         if ($1 != prev)
  14.         {
  15.             if ("" != prev)
  16.             {
  17.             printf("%-25s  %7s %10s %10s\n",
  18.                    "", "-------", "-------", "--------")
  19.             printf("Totals for %-14s  %7d %10d %10.1f\n",
  20.                    prev, subtotpop, subtotarea, subtotden)
  21.             printf("%-15s %-10s %7s %10s %10s\n",
  22.                    "", "", "=======", "=======", "========")
  23.             }
  24.             print ""
  25.             prev = $1
  26.             subtotpop = subtotarea = subtotden = 0
  27.         }
  28.         else
  29.             $1 = ""
  30.         totpop       += $3
  31.         totarea    += $4
  32.         totden       += $5
  33.         subtotpop  += $3
  34.         subtotarea += $4
  35.         subtotden  += $5
  36.         printf("%-15s %-10s %7d %10d %10.1f\n",
  37.                $1, $2, $3, $4, $5)
  38.         }
  39.  
  40. END        {
  41.         printf("%-25s  %7s %10s %10s\n",
  42.                "", "-------", "-------", "--------")
  43.         printf("Totals for %-14s  %7d %10d %10.1f\n",
  44.                prev, subtotpop, subtotarea, subtotden)
  45.         printf("%-15s %-10s %7s %10s %10s\n\n",
  46.                "", "", "=======", "=======", "========")
  47.         printf("%-25s  %7d %10d %10.1f\n",
  48.                "Grand Totals", totpop, totarea, totden)
  49.         printf("%-15s %-10s %7s %10s %10s\n",
  50.                "", "", "=======", "=======", "========")
  51.         }
  52.